Multi-band compressed spatio-temporal logging of radio frequency (rf) telemetry data

ABSTRACT

In one embodiment, an apparatus comprises a compressive sensing schedule generator configured to generate a plurality of compressive sensing schedules, wherein each of the plurality of compressive sensing schedules is for each of a plurality of frequency bands of a network, wherein the network comprises a plurality of access points and a plurality of clients, and a sensing matrix combiner configured to combine the plurality of compressive sensing schedules into a resulting schedule that comprises a spatial distribution and a scheduled time slot for each of the plurality of access points.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.17/484,162, filed Sep. 24, 2021, which is a continuation of U.S. Pat.No. 11,159,970, filed Mar. 12, 2019, both of which are incorporatedherein by reference in their entireties.

BACKGROUND

The present disclosure relates generally to wireless networks andcommunication systems.

In many networks, a spatial map of signal or interference radiofrequency (RF) strength as well as other RF statistics (e.g., SNR(signal to noise ratio), RSSI (received signal strength indicator), MCS(modulation and coding scheme), throughput, and packet retry/retransmitrate, within an operational frequency band are of interest to thenetwork operator and/or network management. Another point of interest isthe chronic evolution of such a spatial map. The data can then be loggedunder the RF statistics within a network monitoring, management, andautomation entity (e.g., a digital network architecture center (DNAC)entity) for further analysis and diagnostic purposes. There are manyoverheads associated with such statistics gathering.

For example, many transmitting nodes may have to act as dedicated andagnostic receivers and/or sensors to gather the data, thereby reducingthe network's capacity for the duration of the sensing. An alternativeis to deploy redundant transceiver nodes in the network, which incursadditional cost to the network planner.

Additionally, the gathered data needs to be communicated to fusion nodesthat have upstream transport capability to the cloud (e.g., the networkmonitoring, management, and automation entity), thereby adding to thediagnostic data traffic to the detriment of payload capacity of thenetwork. Also, the fusion nodes need to communicate the data upstream tothe network monitoring, management, and automation entity in the cloud,adding to the congestion of the upstream link from the network to thecloud.

Moreover, in green networks where power allocation and complexity andcost of the sensor and fusion nodes (memory associated with temporarilystoring RF statistics before upstream transport) is constrained, thesensing and communication overhead due to the RF statistics measurementsand communication may add considerably to the power consumed by eachnode and the cost associated with it.

Therefore, it is desirable to gather, store, and transport theinformation with as few data points as possible to conserve networkresources.

BRIEF DESCRIPTION OF THE DRAWINGS

The following detailed description of illustrative embodiments is betterunderstood when read in conjunction with the appended drawings. For thepurpose of illustrating the embodiments, there is shown in the drawingsexample constructions of the embodiments; however, the embodiments arenot limited to the specific methods and instrumentalities disclosed. Inthe drawings:

FIG. 1 is an illustration of an exemplary environment for multibandcompressive sensing;

FIG. 2 is a block diagram illustrating an example of a networked deviceoperable in accordance with an example embodiment;

FIG. 3 is an operational flow of an implementation of a method ofmultiband compressive sensing;

FIG. 4 is an operational flow of an implementation of a method ofmultiband compressive sensing;

FIG. 5 is an illustration of an example of combining the schedules andmeasurements of three different frequency bands;

FIG. 6 is an operational flow of an implementation of a method ofmultiband compressive sensing using resource saving;

FIG. 7 is an operational flow of an implementation of a method ofmultiband compressive sensing using erasure avoidance;

FIG. 8 is an illustration of another example of combining the schedulesand measurements of three different frequency bands; and

FIG. 9 shows an exemplary computing environment in which exampleembodiments and aspects may be implemented.

DESCRIPTION OF EXAMPLE EMBODIMENTS Overview

The following presents a simplified overview of the example embodimentsin order to provide a basic understanding of some aspects of the exampleembodiments. This overview is not an extensive overview of the exampleembodiments. It is intended to neither identify key or critical elementsof the example embodiments nor delineate the scope of the appendedclaims. Its sole purpose is to present some concepts of the exampleembodiments in a simplified form as a prelude to the more detaileddescription that is presented later.

In an implementation, an apparatus is provided that may include acompressive sensing schedule generator configured to generate aplurality of compressive sensing schedules, wherein each of theplurality of compressive sensing schedules is for each of a plurality offrequency bands of a network, wherein the network comprises a pluralityof access points and a plurality of clients, and a sensing matrixcombiner configured to combine the plurality of compressive sensingschedules into a resulting schedule that comprises a spatialdistribution and a scheduled time slot for each of the plurality ofaccess points.

In an implementation, a method is provided that may include generating,at a compressive sensing schedule generator of a management entity, aplurality of compressive sensing schedules, wherein each of theplurality of compressive sensing schedules is for each of a plurality offrequency bands of a network, wherein the network comprises a pluralityof access points and a plurality of clients, combining, at a sensingmatrix combiner of the management entity, the plurality of compressivesensing schedules into a resulting schedule that comprises a spatialdistribution and a scheduled time slot for each of the plurality ofaccess points, and gathering, by the management entity, a plurality ofradio frequency (RF) statistics from the network using the resultingschedule.

In an implementation, a method is provided that may include monitoring aplurality of frequency bands of a network for a plurality ofnon-compressed radio frequency (RF) statistics, estimating aconfiguration for the network using the non-compressed RF statistics,gathering compressed data from the network using the configuration,recovering a map of RF statistics across the network using thecompressed data, and performing at least one of diagnostics orconfiguration of the network based on the map.

EXAMPLE EMBODIMENTS

This description provides examples not intended to limit the scope ofthe appended claims. The figures generally indicate the features of theexamples, where it is understood and appreciated that like referencenumerals are used to refer to like elements. Reference in thespecification to “one embodiment” or “an embodiment” or “an exampleembodiment” means that a particular feature, structure, orcharacteristic described is included in at least one embodimentdescribed herein and does not imply that the feature, structure, orcharacteristic is present in all embodiments described herein.

FIG. 1 is an illustration of an exemplary environment 100 for multibandcompressive sensing. The environment comprises a management entity 110,one or more central stations referred to as access points (APs) 130,shown as APs 130 a, 130 b, and 130 c, and one or more stations referredto as clients 140, shown as clients 140 a, 140 b, and 140 c. In theenvironment 100, which may be a local area network under 802.11, clients140 a, 140 b, 140 c, wirelessly communicate. In an implementation, theclients 140 a, 140 b, 140 c, are associated with one or more APs 130 a,130 b, 130 c. In some implementations, each of the APs 130 a, 130 b, 130c may comprise a controller and/or a network monitoring, management, andautomation entity such as a digital network architecture center (DNAC)system. In some implementations, one or more of the APs may share acontroller and/or a network monitoring, management, and automationentity. Alternatively, each AP may comprise or be associated with itsown controller and/or network monitoring, management, and automationentity.

The management entity 110, the APs 130, and the clients 140 are operablyconnected to one or more networks, such as a LAN (local area network), aWAN (wide area network), etc. Although only three APs 130 are shown, andonly three clients 140 are shown, this is not intended to be limiting,and any number of clients and access points may be used depending on theimplementation.

Each of the APs 130 and each of the clients 140 may be any type ofdevice with functionality for connecting to a WiFi network such as acomputer, smart phone, or a UE (user equipment) with WLAN (wireless LAN)access capability, such as terminals in a LTE (Long Term Evolution)network. Depending on the implementation, each AP 130 may comprise anytype of access point including a router, for example. Each of theclients 140 may comprise any type of wireless station or receiverdevice, for example.

The APs 130 and the clients 140 may be implemented using a variety ofcomputing devices such as smartphones, desktop computers, laptopcomputers, tablets, set top boxes, vehicle navigation systems, and videogame consoles. Other types of computing devices may be supported. Asuitable computing device for use as a client or as an AP is illustratedin FIG. 9 as the computing device 900. The example embodiments describedherein refer to the Institute of Electrical and Electronics Engineers(IEEE) 802.11 standards; however, these examples are provided in orderto employ well defined terminology for ease of description, and theprinciples described herein may be applied to any suitable protocol thatprovides traffic such as multicast streams as described herein.

Each of the APs 130 comprises an RF (radio frequency) transceiver(transmitter-receiver) and processing circuitry that includes thefunctionalities for WiFi network access via the RF transceiver as wellas other functionalities for processing described herein. Each of theclient devices 140 also includes an RF transceiver and processingcircuitry. The RF transceivers may each incorporate one or moreantennas.

More particularly, FIG. 2 is a block diagram illustrating an example ofa networked device 200, such as an access point, operable in accordancewith an example embodiment. The networked device 200 is suitable toprovide the functionality described herein for each of the APs 130, forexample. The networked device 200 comprises a transmitter 220 forsending data, a receiver 230 for receiving data, and a controller 210coupled with the transmitter 220 and the receiver 230 and operable tosend and receive data via the transmitter 220 and the receiver 230,respectively. In FIG. 2 , the transmitter 220 is coupled to an antenna225 while the receiver 230 is coupled to an antenna 235; however, thoseskilled in the art can readily appreciate that the transmitter 220 andthe receiver 230 can be coupled to a common antenna.

In an example embodiment, the controller 210 suitably comprises logicfor performing the functionality described herein. “Logic”, as usedherein, includes but is not limited to hardware, firmware, softwareand/or combinations of each to perform a function(s) or an action(s),and/or to cause a function or action from another component. Forexample, based on a desired application or need, logic may include asoftware controlled microprocessor, discrete logic such as anapplication specific integrated circuit (ASIC), system on a chip (SoC),programmable system on a chip (PSOC), a programmable/programmed logicdevice, memory device containing instructions, or the like, orcombinational logic embodied in hardware. Logic may also be fullyembodied as software stored on a non-transitory, tangible medium whichperforms a described function when executed by a processor. Logic maysuitably comprise one or more modules configured to perform one or morefunctions.

There are several categories of compressive spectrum sensing, includingcognitive radio spectrum sensing in two dimensions (frequency andspace). In this category by frequency, sub-nyquist sampling is impliedin order to capture the information regarding the spectrum. It is notedthat the framework and techniques described herein do not assumesparsity in frequency, as implementations herein look at specificsub-bands of interest, and implementations herein use the temporalgradation of the spectrum and other RF statistics in compressedmeasurement techniques.

Well known studies and techniques focus on using machine or dictionarylearning in order to make predictions or fill in missing data in aspectral sensing regime. Temporal sensing, alone or with spatialaspects, often uses machine or dictionary learning to make predictionsor fill in the missing data in a spectral sensing regime. Oneconventional technique uses an off-the-shelf dictionary learning andsparse coding mechanism to infer the spatial and temporal attributes ofthe interference spectrum. It uses sparse coding using the learntdictionary to measure the data. However, it is noted that the frameworkand techniques described herein do not rely on or use machine ordictionary learning to achieve compression.

As described further herein, compressive sensing based on statisticalanalysis of spectral/RF statistics data which is captured over time isused to generate a deterministic measurement matrix. Two-dimensional(2D) compressive sensing algorithms are used to determine themeasurement matrix for the per-band sensing. Erasure recovery (missingdata recovery) may be used in the compressive sensing to provideprotection against anomalies or missed opportunities to sense by one ofthe transceivers. In some implementations, the erasure recovery (missingdata recovery) attributes of OAMP (operations, administration,maintenance, and provisioning) recovery algorithms may be used incompressive sensing to provide protection against anomalies or missedopportunities to sense by one of the transceivers.

In some implementations, a multi-band joint spatio-temporal compressivesensing framework is provided. The three dimensions (frequency, time,and space) are considered. As described further herein, the spectrumsensing requirements are met while using as few resources as possible,by instructing multiple APs to go to different frequency bands indifferent time slots according to a computed compressive sensingschedule, also referred to as a measurement matrix. The multi-bandspatio-temporal compressive sensing dramatically reduces the volume ofRF related data gathered and communicated, while recovering the desiredinformation at the management entity whether collocated with the networkor in the cloud.

As further described, a framework and methods (e.g., resource savingoriented and erasure avoidance oriented) are provided that address jointspatio-temporally compressed telemetry data collection in multiplefrequency bands that can be designed for different system requirements.First, a compressive sensing schedule (i.e., measurement matrix) of eachfrequency band is computed separately. Next, a flexible combiningprocess generates the composite sensing schedule (measurement matrix)across multiple bands. Thus, a framework is provided with which one cancompile telemetry information while realizing considerable savings innetwork resources.

Returning to FIG. 1 , the management entity 110 comprises a data monitor112, a data repository 114, a compressive sensing schedule generator116, a sensing matrix combiner 118, and a fusion center 120.

The data monitor 112 gathers RF statistics from the network, such as afrequency band of a scan, a time of a scan, and the nodes configured toscan. The data repository 114 receives and stores the RF statistics. Thecompressive sensing schedule generator 116 uses the RF statistics tocompute compressive sensing schedules (e.g., in the form of matricesreferred to as measurement matrices).

The sensing matrix combiner 118 combines the compressive sensingschedules of the different frequency bands, and the fusion center 120reconstructs sensing schedules (e.g., in the form of matrices) afteradditional sensing, as described further herein. It is contemplated thatthe fusion center and the management entity may be two distinct entitiesor may be comprised within one physical entity, depending on theimplementation.

Compressive sensing is an emerging technology in the field of signalprocessing. In two-dimensional compression and measurement (compressivesensing), the joint sparsity of the two-dimensional data is consideredin deriving a measurement matrix and recovery algorithms. In compressivesampling, as is well known, when data is sparse and compressible, acondensed representation can be acquired with little or no informationloss through y=φx linear dimensionality reduction.

Central to the choice for the measurement matrix of a compressivesensing schedule is the well-known restricted isometry property (RIP).RIP is useful in the choice of the measurement matrix φ that may be usedas a compressive sensing schedule. The structure of sparse/compressiblesignals is preserved (here K is the cardinality of the signals x₁ and x₂in an orthogonal basis set, where typically 2K≤M<<N).

RIP of the order 2K implies: for all K-sparse x₁ and x₂, where δ_(2K)corresponds to the smallest positive number such that:

$\left( {1 - \delta_{2k}} \right) \leq \frac{{{\Phi_{x_{1}} - \Phi_{x_{2}}}}_{2}^{2}}{{{x_{1} - x_{2}}}_{2}^{2}} \leq \left( {1 + \delta_{2k}} \right)$

RIP ensures that ∥x₁−x₂∥₂≈∥φ₁−φ₂∥₂.

The choice of M and δ_(2K), when designing a measurement matrix, enablesfull (N nodes) data recovery with varying quality (Signal to RecoveryNoise), and robustness against erasures. Two known methods that describejoint two-dimensional compressive sensing are Kronecker compressivesensing and distributed compressive sensing, outlining a systematic wayof obtaining the measurement matrix. There is also a tradeoff in choiceof M and δ_(2K) with respect to quality of recovery, robustness againsterasures, and resource savings. There are many known systematic andheuristic procedures for determining M and δ_(2K) for a jointtwo-dimensional compressive sensing problem. Depending on theimplementation, the choice is specific to the statistics of the sensedRF features. Additionally, for a given RIP criterion and a desiredcompression ratio, M/N, if N is large enough, one may compute multiplemeasurement matrices that can perform the compressive sensing task.

FIG. 3 is an operational flow of an implementation of a method 300 ofmultiband compressive sensing. In some implementations, the method 300may be performed by the management entity 110.

At 310, the non-compressed RF statistics of the network are surveyed,e.g., by the data monitor 112 of the management entity 110. The RFstatistics may be gathered and stored in storage, such as the datarepository 114 of the management entity 110.

At 320, a configuration is estimated using the RF statistics. Theestimated configuration comprises the spatial distribution and thescheduled time slot for each sensing AP and is based on the designedmeasurement matrix (i.e., the compressive sensing schedule) for eachfrequency band. At 330, the configuration is provided to the network,e.g., by the management entity 110.

At 340, the management entity 110 commences RF data gathering activityfrom the network using the compressive measurements according to theappropriate compressive sensing schedule for each frequency band.

At 350, the gathered data, such as the spatio-temporal compressed data,is provided to a fusion center (such as the fusion center 120) or otherdata repository, such as a DNAC telemetry data repository.

At 360, using iterative recovery algorithms, the full map of RFstatistics is recovered across all nodes and all time slots for all thefrequency bands of interest, based on the compressed data from 350. At370, the full map of RF statistics may be used for further diagnosticsand/or configuration.

FIG. 4 is an operational flow of an implementation of a method 400 ofmultiband compressive sensing. At 405, a plurality of frequency bandsare separately monitored. Although three frequency bands (i.e.,frequency bands 1, 2, and 3) are shown as monitored at 405 ₁, 405 ₂, and405 ₃, respectively, this is not intended to be limiting as any numberof frequency bands may be monitored.

At 410 (e.g., 410 ₁, 410 ₂, and 410 ₃), baseline monitoring of thewireless environment is performed. The statistics of modalities aregathered for each of the frequency bands 1, 2, and 3. The statistics mayinclude any transmission medium or transceiver (transmitter-receiver)related metric(s) of interest such as, for example, RSSI, MCS, SNR, andre-transmit rate. With this information, a 2D matrix (space and time)can be created and used to determine which sensors to monitor.

At 415 (e.g., 415 ₁, 415 ₂, and 415 ₃), a compressive sensing schedule(e.g., in the form of a matrix) is generated for each of the frequencybands 1, 2, and 3. Any type of compressive sensing schedule or matrixgeneration technique may be used, such as Kronecker or distributed, forexample, and the generation may be performed by the compressive sensingschedule generator 116.

At 420, the compressive sensing schedules (e.g., matrices) from 415 arecombined into a resulting schedule, in the form of a matrix for example.The sensing matrix combiner 118 may perform the combining. The resultingmatrix is a schedule that comprises a spatial distribution as well asthe scheduled time slot for each sensing AP (e.g., the transceiver ofeach AP), which are based on the computed compressive sensing schedules(measurement matrices) in each frequency band from 415 (which werecomputed using the non-compressed RF statistics by the management entity110, for example).

The resulting matrix includes the frequency band(s) of scan, time(s) ofscan, and the node(s) configured to scan, and this information iscommunicated to the network by the management entity for sensing at 425.Thus, the resulting matrix is used for sensing in each of the frequencybands 1, 2, and 3, at 425 (e.g., 425 ₁, 425 ₂, and 425 ₃). The resultingmatrix may also be used, at 422, to determine data directed torobustness to erasure, a reconstruction quality threshold, and/or apercentage of resources saved, for example. Such data may be provided ina loop 424 back to 415 (e.g., 415 ₁, 415 ₂, and 415 ₃) to again generatea compressive sensing schedule for each of the frequency bands 1, 2, and3. The loop 424 is used to construct the 2D matrix, which is the sensingschedule.

More particularly, regarding the loop 424, during the compressivesensing schedule (i.e., measurement matrix) composition process, when adesired combination is determined that cannot be computed per the needsof the management entity, the requirements (e.g., robustness to erasure,reconstruction quality, and percentage of resources saved (all arerelated to compression ratio)) may be altered, and the per-bandschedules/measurement matrices may be recomputed at 415, and thecomposition process may be repeated at 420 until a desired combinationis determined that can be computed per the needs of the managemententity.

At this point, at 425, the RF data gathering activity (RF statistics byway of compressive measurements) commences, and the relevantspatio-temporal compressed data is communicated and provided to the mainfusion center or the DNAC telemetry data repository. At this point, at430, iterative recovery algorithms may be utilized to recover the fullmap of RF statistics (data) across all nodes and all time slots for allthe interested frequency bands based on the available compressedtelemetry log. Any recovery algorithm may be used, such as publishedvariants of OMP (orthogonal matching pursuit) which are well studied inthe compressive sensing literature. The data can then be used by themanagement entity or other agents for DNAC for further diagnostic andconfiguration at 432.

Thus, at 430, the results of the sensing from each of the frequencybands are used to reconstruct the telemetry data. With the reconstructedtelemetry data, various actions or events on the network may beinstituted at 432, such as one or more APs may join or leave thenetwork, sensing requirements may be changed, sensing environments maybe changed, etc.

From 432, processing may continue with a loop 434 back to 415 (e.g., 415₁, 415 ₂, and 415 ₃). The loop 434 may be considered a sensing loop inthat the processing continues with the further computation ofcompressive sensing schedules (matrices) using data captured fromsubsequent frequency band captures. Thus, regarding the loop 434, thecomputation of schedules, measurements, and corresponding combinationsmay be refreshed or updated if several events take place, such as (a)APs join/leave, (b) a change of sensing requirements, or (c) a change inthe sensing environment at 432.

Thus, a two-step optimization is provided. For each frequency band ofinterest, at 415, compute multiple compressive sensing schedules (e.g.,measurement matrices) (per the loop 424), based on a requirement such asreconstruction quality, resource savings (compression ratio), androbustness to erasure using a well-known 2D compressive sensingalgorithm depending on the implementation. At 420, select onecompressive sensing schedule (measurement matrix) for each band andcombine them together, based on system requirements, such as preferencefor resource saving or erasure avoidance. There are multiple algorithmsthat can be used to select the suitable compressive sensing schedules,such as greedy algorithm or exhaustive search.

As noted above, at 420, the compressive sensing schedules, e.g., in theform of matrices, are combined into a resulting matrix. An embodimentdirected to combining the matrices of the compressive sensing schedulesis described. For 420, there are two different embodiments as to how tocombine the compressive sensing schedule matrices of different bands.One embodiment of the combining is described with respect to FIG. 5 .FIG. 5 is an illustration of an example of combining the schedules andmeasurements of three different frequency bands using a resource savingoriented implementation.

In illustration 500, each row in the initial matrices 510, 520, 530(which correspond to frequency bands 1, 2, and 3, respectively, such asthe three frequency bands monitored at 405 ₁, 405 ₂, and 405 ₃,respectively, in FIG. 4 ), as well as each row in the resulting matrix540, is an AP, and each column in the matrices 510, 520, 530, 540 is atime slot. A “1” in a matrix means to activate the AP to do wirelessmonitoring, and a “0” in a matrix means to not use the AP to domonitoring (e.g., because it is for transmitting, or any otherreason(s)).

The shaded portions of the initial matrices 510, 520, 530 are thesensing schedules that are selected. They are directly added together toget the resulting matrix 540. This resulting matrix, where the “1”s are,indicates that the AP is required to be activated in a particularfrequency at a particular time slot. The “2” in the resulting matrix 540means that two frequency bands need to be sent in that time slot. Thistakes a lot of resources. The resulting matrix 540 will lead to a lot oferasures because of all the “2”s.

Thus, in FIG. 5 , each of the 3-by-5 matrices 510, 520, 530 representsthe scheduling/measurement regiment for joint spatio-temporalcompressive sensing for one frequency band, with rows being the APnumber and columns being the time slots. “1” means that the AP is on inthe corresponding band, while “0” means that the AP is off. After step415 of FIG. 4 , each frequency band now has multiple sensing schedules(the four matrices shown in each of the 3-by-5 matrices 510, 520, 530).These matrices may be obtained using the two aforementioned schemes(Kronecker and distributed) while satisfying a particular RIPconstraint. As mentioned earlier, for a given RIP criterion and adesired compression ratio, M/N, if N is large enough, one may computemultiple measurement matrices that can perform the compressive sensingtask. The next step is to come up with a composite matrix for all bandswhich can be done in different ways (the selected schedule is shaded inFIG. 5 ). A consideration is that each AP can only be used in each timeslot for only one frequency band. Therefore, if there are multipleschedules that require the same AP to be in different bands for one timeslot (element of the matrix 540 larger than 1), only one band can beselected for the AP to make a measurement for. In such a case, where oneor multiple conflicts exist, one could skip scheduled measurements bythe AP in all bands but one, in that time slot, and consider theassociated measurement/sample in the missed bands as erasures (impulsenoise or outliers are known to corrupt a compressive sensingmeasurements in such a fashion). Accordingly, a resource savingtechnique may be considered.

FIG. 6 is an operational flow of an implementation of a method 600 ofmultiband compressive sensing using resource saving. With a resourcesaving technique, a combination is determined that uses the fewestresources.

At 610, the compressive sensing schedules are combined in a combination.At 620, the number of time slots that will be excluded in thecombination from 610 is determined. Processing continues at 610 with thecompressive sensing schedules being combined in another combination.Processing continues until the compressive sensing schedules have beencombined in each of the different combinations. At this point, thecombination of compressive sensing schedules with the most time slotsthat will be excluded is selected and subsequently used.

In this manner, the combination of compressive sensing schedules isselected with which most time slots are excluded for spectrum sensing(and thus can be used for other purposes like serving clients). Becauserecovery algorithms generally have certain tolerance to data erasure, itensures the full map of RF telemetry can be reconstructed at the fusioncenter/DNAC, though with slightly lower confidence and/or higherconvergence time of the iterative OMP algorithm.

In another implementation, an erasure avoidance technique may be usedwith multiband compressive sensing to select a composite measurementmatrix. FIG. 7 is an operational flow of an implementation of a method700 of multiband compressive sensing using erasure avoidance.

At 710, the compressive sensing schedules are combined in a combination.At 720, it is determined whether the combination of compressive sensingschedules results in an AP having to go to multiple bands in one timeslot. Processing continues at 710 with the compressive sensing schedulesbeing combined in another combination. Processing continues untilcompressive sensing schedules have been combined in each of thedifferent combinations. At this point, the combination of compressivesensing schedules with which an AP has to go to multiple bands in onetime slot will be excluded and not used. Any of the remaining (i.e.,non-excluded) combinations may subsequently be used. In animplementation, the least overlapping combination of compressive sensingschedules may be selected for use.

FIG. 8 is an illustration of an example 800 of combining the compressivesensing schedules and measurements of three different frequency bandsusing erasure avoidance. Here, similar to FIG. 5 , each of the 3-by-5matrices 810, 820, 830 (the initial matrices) represents thescheduling/measurement regiment for joint spatio-temporal compressivesensing for one frequency band, with rows being the AP number andcolumns being the time slots. The resulting matrix 840 show a “2” whichmeans that one AP to be on at two different bands at the same time, butthis is not possible, so a vacancy is created here. The “2” is erased,so this method is called erasure avoidance.

In some implementations, aspects of the two embodiments, resource savingand erasure avoidance, can be combined in the selection of a compositemeasurement matrix.

FIG. 9 shows an exemplary computing environment in which exampleembodiments and aspects may be implemented. The computing deviceenvironment is only one example of a suitable computing environment andis not intended to suggest any limitation as to the scope of use orfunctionality.

Numerous other general purpose or special purpose computing devicesenvironments or configurations may be used. Examples of well knowncomputing devices, environments, and/or configurations that may besuitable for use include, but are not limited to, personal computers,server computers, handheld or laptop devices, multiprocessor systems,microprocessor-based systems, network personal computers (PCs),minicomputers, mainframe computers, embedded systems, distributedcomputing environments that include any of the above systems or devices,and the like.

Computer-executable instructions, such as program modules, beingexecuted by a computer may be used. Generally, program modules includeroutines, programs, objects, components, data structures, etc. thatperform particular tasks or implement particular abstract data types.Distributed computing environments may be used where tasks are performedby remote processing devices that are linked through a communicationsnetwork or other data transmission medium. In a distributed computingenvironment, program modules and other data may be located in both localand remote computer storage media including memory storage devices.

With reference to FIG. 9 , an exemplary system for implementing aspectsdescribed herein includes a computing device, such as computing device900. In its most basic configuration, computing device 900 typicallyincludes at least one processing unit 902 and memory 904. Depending onthe exact configuration and type of computing device, memory 904 may bevolatile (such as random access memory (RAM)), non-volatile (such asread-only memory (ROM), flash memory, etc.), or some combination of thetwo. This most basic configuration is illustrated in FIG. 9 by dashedline 906.

Computing device 900 may have additional features/functionality. Forexample, computing device 900 may include additional storage (removableand/or non-removable) including, but not limited to, magnetic or opticaldisks or tape. Such additional storage is illustrated in FIG. 9 byremovable storage 908 and non-removable storage 910.

Computing device 900 typically includes a variety of computer readablemedia. Computer readable media can be any available media that can beaccessed by the device 900 and includes both volatile and non-volatilemedia, removable and non-removable media.

Computer storage media include volatile and non-volatile, and removableand non-removable media implemented in any method or technology forstorage of information such as computer readable instructions, datastructures, program modules or other data. Memory 904, removable storage908, and non-removable storage 910 are all examples of computer storagemedia. Computer storage media include, but are not limited to, RAM, ROM,electrically erasable program read-only memory (EEPROM), flash memory orother memory technology, CD-ROM, digital versatile disks (DVD) or otheroptical storage, magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices, or any other medium which canbe used to store the desired information and which can be accessed bycomputing device 900. Any such computer storage media may be part ofcomputing device 900.

Computing device 900 may contain communication connection(s) 912 thatallow the device to communicate with other devices. Computing device 900may also have input device(s) 914 such as a keyboard, mouse, pen, voiceinput device, touch input device, etc. Output device(s) 916 such as adisplay, speakers, printer, etc. may also be included. All these devicesare well known in the art and need not be discussed at length here.

It should be understood that the various techniques described herein maybe implemented in connection with hardware components or softwarecomponents or, where appropriate, with a combination of both.Illustrative types of hardware components that can be used includeField-programmable Gate Arrays (FPGAs), Application-specific IntegratedCircuits (ASICs), Application-specific Standard Products (ASSPs),System-on-a-chip systems (SOCs), Complex Programmable Logic Devices(CPLDs), etc. The methods and apparatus of the presently disclosedsubject matter, or certain aspects or portions thereof, may take theform of program code (i.e., instructions) embodied in tangible media,such as floppy diskettes, CD-ROMs, hard drives, or any othermachine-readable storage medium where, when the program code is loadedinto and executed by a machine, such as a computer, the machine becomesan apparatus for practicing the presently disclosed subject matter.

Although exemplary implementations may refer to utilizing aspects of thepresently disclosed subject matter in the context of one or morestand-alone computer systems, the subject matter is not so limited, butrather may be implemented in connection with any computing environment,such as a network or distributed computing environment. Still further,aspects of the presently disclosed subject matter may be implemented inor across a plurality of processing chips or devices, and storage maysimilarly be effected across a plurality of devices. Such devices mightinclude personal computers, network servers, and handheld devices, forexample.

The present invention has been explained with reference to specificembodiments. For example, while embodiments of the present inventionhave been described as operating in connection with IEEE 802.11networks, the present invention can be used in connection with anysuitable wireless network environment. Other embodiments will be evidentto those of ordinary skill in the art.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

What is claimed is:
 1. A system comprising: a processor; and memoryhaving instructions stored thereon that, when executed by the processor,cause the system to: generate a plurality of compressive sensingschedules for each of a plurality of frequency bands of the network,wherein the network comprises a plurality of access points and aplurality of clients; generate a plurality of schedule combinations byrepeatedly combining the plurality of compressive sensing schedules indifferent combinations, wherein each of the plurality of schedulecombinations includes a spatial distribution and a scheduled time slotfor each of the plurality of access points; determine a possibleschedule combination of the plurality of possible schedule combinationswith a highest number of excluded time slots; and generate a map ofradiofrequency (RF) statistics gathered from the network using thepossible schedule combination with the highest number of excluded timeslots.
 2. The system of claim 1, wherein the instructions further causethe system to monitor the plurality of frequency bands of the network.3. The system of claim 2, wherein the instructions further cause thesystem to collect statistics of modalities for each of the plurality offrequency bands of the network.
 4. The system of claim 3, wherein theinstructions further cause the system to generate a 2-dimensional (2D)matrix of the network using the collected statistics of modalities. 5.The system of claim 1, wherein generating the map of RF statisticsgathered from the network comprises gathering RF data from the networkusing the possible schedule combination with the highest number ofexcluded time slots.
 6. The system of claim 5, wherein the instructionsfurther cause the system to recover a full map of RF statistics based onthe gathered RF data using one or more iterative recovery algorithms. 7.The system of claim 6, wherein the gathered RF data is spatio-temporalcompressed data.
 8. The system of claim 6, wherein the instructionsfurther cause the system to use the full map of RF statistics fordiagnostics or configuration.
 9. A system comprising: a processor; andmemory having instructions stored thereon that, when executed by theprocessor, cause the system to: generate a plurality of compressivesensing schedules for each of a plurality of frequency bands of anetwork, the network comprising a plurality of access points and aplurality of clients; generate a plurality of schedule combinations byrepeatedly combining the plurality of compressive sensing schedules indifferent combinations, wherein each of the plurality of schedulecombinations includes a spatial distribution and a scheduled time slotfor each of the plurality of access points; and generate a map ofradiofrequency (RF) statistics gathered from the network using any ofthe plurality of possible schedule combinations that do not require atleast one of the plurality of access points to go to multiple of theplurality of frequency bands in one time slot.
 10. The system of claim9, wherein the instructions further cause the system to monitor theplurality of frequency bands of the network.
 11. The system of claim 10,wherein the instructions further cause the system to collect statisticsof modalities for each of the plurality of frequency bands of thenetwork.
 12. The system of claim 11, wherein the instructions furthercause the system to generate a 2-dimensional (2D) matrix of the networkusing the collected statistics of modalities.
 13. The system of claim 9,wherein generating the map of RF statistics gathered from the networkcomprises gathering RF data from the network using at least one of theplurality of possible schedule combinations that do not require at leastone of the plurality of access points to go to multiple of the pluralityof frequency bands in one time slot.
 14. The system of claim 13, whereinthe instructions further cause the system to recover a full map of RFstatistics based on the gathered RF data using one or more iterativerecovery algorithms.
 15. The system of claim 14, wherein the gathered RFdata is spatio-temporal compressed data.
 16. The system of claim 14,wherein the instructions further cause the system to use the full map ofRF statistics for diagnostics or configuration.
 17. A method ofmultiband compressive sensing for a network that comprises a pluralityof access points and a plurality of clients, the method comprising:generating a plurality of compressive sensing schedules for each of aplurality of frequency bands of the network; generating a plurality ofschedule combinations by repeatedly combining the plurality ofcompressive sensing schedules in different combinations, wherein each ofthe plurality of schedule combinations includes a spatial distributionand a scheduled time slot for each of the plurality of access points;and generating a map of radiofrequency (RF) statistics gathered from thenetwork using any of the plurality of possible schedule combinationsthat do not require at least one of the plurality of access points to goto multiple of the plurality of frequency bands in one time slot. 18.The method of claim 17, wherein generating the map of RF statisticsgathered from the network comprises gathering RF data from the networkusing at least one of the plurality of possible schedule combinationsthat do not require at least one of the plurality of access points to goto multiple of the plurality of frequency bands in one time slot. 19.The method of claim 17, further comprising monitoring the plurality offrequency bands of the network.
 20. The method of claim 18, furthercomprising: collecting statistics of modalities for each of theplurality of frequency bands of the network; and generating a2-dimensional (2D) matrix of the network using the collected statisticsof modalities.